package unit7;

import java.util.Arrays;

public class ArrayDemo2 {
//	2、用0-100之间的随机数给数组元素赋值
	static void init(int[] a) {
		for (int i=0; i<a.length; i++) {
			a[i] = (int)(Math.random()*100);
		}
	}
	static void init2(int[] a) {
		for (int v : a) {
			v = (int)(Math.random()*100);
		}
	}
//	3、遍历数组元素（从0开始访问数组的每个元素），并输出
	static void print1(int[] a) {
		for (int i=0; i<a.length; i++) {
			int v = a[i];
			System.out.print(v + ", ");
		}
		System.out.println();
	}
	static void print2(int[] a) {
		for (int v : a) {
			System.out.print(v + ", ");
		}
		System.out.println();
	}
//	4、求数组元素的和
	static int sum(int[] a) {
		int sum = 0;
		for (int i=0; i<a.length; i++) {
			sum += a[i];
		}
		return sum;
	}
//	5、求数组元素的最大值
	static int max(int[] a) {
		int max = Integer.MIN_VALUE;
		for (int v : a) {
			if (v > max) {
				max = v;
			}
		}
		return max;
	}
//	6、在数组中查找某个元素，找到返回元素的下标，没找到返回-1
	static int find(int[] a, int v) {
		for (int i=0; i<a.length; i++) {
			if (a[i] == v) {
				return i;
			}
		}
		return -1;
	}



	public static void main(String[] args) {
//		1、定义并创建10个元素的int型数组
		int[] a = new int[10];
		init2(a);
		print1(a);
		int s = sum(a);
		System.out.println("sum = " + s);
		int m = max(a);
		System.out.println("max = " + m);
		max(new int[0]);

		int idx = find(a, 50);
		System.out.println("idx = " + idx);

//		7、使用Arrays.sort 方法排序数组元素
		Arrays.sort(a);
		print2(a);
	}


}
